This section is intended to introduce various aspects of the art, which may be associated with aspects of the disclosed techniques and methodologies. A list of references is provided at the end of this section and may be referred to hereinafter. This discussion, including the references, is believed to assist in providing a framework to facilitate a better understanding of particular aspects of the disclosure. Accordingly, this section should be read in this light and not necessarily as admissions of prior art.
Many software applications maintain several types of domain objects. A domain object is a representation of a portion of a real world concept residing within a software application's memory. In the field of oil and gas exploration and production, a domain object could represent a wellbore, a well completion, a well log, a well core, tubulars, a surface, a three-dimensional model, a seismic cube, a three dimensional surface, a well zone, a point, a point set, a polyline, hydrocarbon management data such as production data, etc. Associated with these domain objects are metadata that contain information about the domain object, in addition to any data associated with the actual domain object itself.
Software applications can maintain thousands of domain objects in lists that end users can graphically interact with, but since manually navigating large graphical lists can be prohibitively tedious, applications often organize domain objects automatically into subgroups to simplify the navigation process. Typically subgroups are organized by metadata type. For example, domain objects of metadata type “wellbore” would be organized into a wellbore subgroup. Some applications also allow users to organize data into custom defined subgroups, which may be referred to as folders. These user defined subgroups are maintained and organized by the user with minimal assistance from the software application. For example, a user might want to organize all wellbores existing in a specific reservoir fault block into a unique subgroup. If the user creates a new wellbore in the same fault block it is the user's responsibility to add the newly created wellbore domain object into the fault block's corresponding unique subgroup. The application does not assist the user in this updating process by automatically adding the new wellbore to the appropriate subgroup. This type of organization strategy is common in most current applications, and the burden of maintaining organization is placed on the user. An increase in the number of oil and gas related domain objects to be tracked drives a corresponding increased need to improve how these data are organized to improve worker efficiency.
Related publications include U.S. Pat. Nos. 7,359,915 and 6,353,437. The '437 patent, titled “Animation System and Method for Defining and using Rule-based Groups of Objects” discloses a method that performs an organizational function for animated objects in the creation of movies and computer games. The method of the '437 patent manages objects for animated objects present in “scenes” located in computer software “animation windows.” All the affected objects are therefore referenced to frame number, frame sequence or run-time, and not to real world spatial coordinates. What is needed is a way to link oil and gas-related domain objects associated with real-world spatial coordinates. More specifically, what is needed is a way to place domain objects within subgroups dynamically utilizing information about the object or relationships between objects.